Method for code re-allocation in telecommunication systems, related system and computer product

ABSTRACT

In a code division multiple access transmission system (CDMA), codes are generated according to a tree structure organized on a plurality of layers. Each re-allocation is considered as an access request to the system by a new user and the re-allocation codes are transmitted to each involved user through the respective re-allocation messages. Re-allocation messages to users having the same spreading factor (SF), and hence the same service bit-rate (kR) are substantially sent simultaneously, in order to reduce to a minimum the time required for the re-allocation operation.

TECHNICAL FIELD

The present invention relates to the techniques or Code AllocationScheme or CAS, for the Code Division Multiple Access or CDMA typetelecommunication systems, and it was developed with a special attentionto the necessity of reducing waiting time for activating new calls.

BACKGROUND ART

In the UMTS (Universal Mobile Telecommunication System) use context, onthe basis of the UTRA (UMTS Terrestrial Radio Access) specifications,such as the TS 3 GPP RAN 25.213 v3.6.0, June 2001) specification, one ormore OVSF (Orthogonal Variable Spreading Factor) codes are allocated toeach user in the “downlink” connections for channelling purposes.

Access with a higher data rate is made possible in two different ways:either by a single code using a lower spreading factor or by more codes,using the same spreading factor (multicode concept).

Supposing that—for the sake of treatment simplicity—each user isallocated a single OVSF code, it is possible to note that such codes aremarked by the tree structure shown in FIG. 1.

To enable code identification, each code is allocated the number of asingle layer or of a layer and of a branch number or branch, just asshown in FIG. 1.

For the sake of simplicity, should it be assumed that a servicerequiring a bit-rate equal to R bps, could be mapped into a codebelonging to layer 1, a code belonging to layer M could be used to map aservice requiring 2^(M−1)·R bps.

This hypothesis is valid if the mapping of services are not consideredin detail (that is the actual channel coding and/or the so-calledpuncturing function).

In any case, the management techniques of the codes treated here, can beused also for allocating the codes for services, referring to theiractual mapping as in the case of the solutions described in documentIST-2000 ARROWS D04, “System Specification. Radio Resource ManagementAlgorithms: Identification and requirements”.

Maximum spreading factor N_(max) is equal to the overall number of codesin layer 1.

The following definitions will hereinafter be used, consistent withthose presented in the work of Thit Minn and Kai-Yeung Siu, “DynamicAssignment of Orthogonal Variable-Spreading-Factor Codes in W-CDMA”,IEEE Journal on Selected Areas in Communications, Vol.18, n.8, August2000, pages 1429-1440:

-   -   descendant codes: all the lower level codes generated starting        from a higher level code;    -   mother codes: all the high level codes connecting a special code        to the code corresponding to the tree root;    -   sibling codes: two codes generated by their immediately        preceding mother code; and    -   leaves: the lowest level codes.

Using this tree structure, it is possible to have all the codesbelonging to the same level (and hence having the same length and thesame spreading factor or SF) to be orthogonal to one another, that ishaving a cross-correlation equal to zero and a self correlation equal toone.

When a certain code is allocated, it is no longer possible to allocateany descendant code whatsoever or any corresponding mother code: thesecodes would not be orthogonal with one another.

It is then useful to define a branch in the form of a sub-tree of a codetree, the highest code level of which (called the branch root code)appears to be available as well as all the corresponding mother codes;should the branch root code belong to the layer x, the branch itself iscalled the layer x branch).

Based on the above mentioned considerations, it can be immediately notedthat the advantage of the OVSF codes, just as used in a downlink UTRAconnection, stays in their perfect squareness. There however remains thedrawback given by the limited number of available codes. It is thereforeimportant to be able to re-allocate the channelling code with anefficient way of proceeding, in order to avoid the phenomenon currentlycalled “code blocking”.

This denomination shows the situation where:

-   -   based on the interference analysis as well as based on the        coding tree spare capacity—it could be possible to accept a new        call, but    -   due to the code allocation, which appears to be inefficient,        this ability is not actually available, entailing that the new        call must be blocked.

This situation is schematically shown in FIG. 2. By adopting the sameformalism as in FIG. 1, two different code allocation examples are shownhere. In particular, in FIGS. 2 a and 2 b diagrams, the solid spotsstand for the allocated codes, while the crosses highlight codes thatare unavailable, and cannot be hence allocated, since they are blockedby other allocations.

In both cases the same services are supported; nevertheless in theexample shown on the left side of the figure shown as 2 a, no availablecode belonging to layer 3 is available. On the other hand, code (3,1) isavailable in the example shown on the right side of the figure marked as2 b: this means that this last code allocation is more efficient thanthe first one.

About this matter it can be also noted that the “code blocking”phenomenon fully differs from a call block turning up when a new callcannot be accepted since the capacity available to the tree is notsufficient.

In order to oppose the code blocking phenomenon,allocation/re-allocation strategies have therefore been set to require acode passage or “code handover”, arranging by way of example, that eachcurrent call using a certain code, should be forced to use a differentcode belonging to the same layer.

In general terms, a code allocation strategy aims at:

-   -   minimising coding tree fragmentation,    -   keeping the largest possible number of high rate codes, and    -   eliminating the code blocking phenomenon.

By way of example, in the above-mentioned Minn and Siu works, there isthe proposal of a strategy based on an OVSF code allocation diagram,wherein the re-allocation criteria enable the complete elimination ofthe code blocking phenomenon. This is an optimal strategy in the sensethat it minimises the number of OVSF codes to be re-allocated in orderto be enabled to withstand a new call. This diagram minimises the numberof code handover phenomena together with the associated signallingoverhead.

It is possible to prove that should the data rate required by a newinput call, fall within the maximum tree capacity, the new call could besupported through code re-allocation. Should the full tree capacity beunable to be allocated because of the limit given by the interference,the related strategy is able to remove in any case the code blockingphenomenon.

Supposing that a new call could be supported, it is necessary toallocate to such call a candidate code. For the above reasons, thisoperation could nevertheless require the re-allocation of the descendantcodes occupied by a branch with respect to which the candidate codeconstitutes the root code. This could in turn require the re-allocationof codes busy in other branches, and so on. In other words, with anadequate re-allocation strategy, it is possible to eliminate thecode-blocking phenomenon.

There however remains the necessity for setting criteria capable ofminimising the number of the necessary re-allocations in order to beable to withstand a new call.

To this purpose it is possible, by way of example, to proceed byassociating a cost function to each candidate branch, allocatingthereafter to the new call the root code of a minimum cost branch.

By such a method it can be mainly forecast three successive steps.

At a first step it is checked whether the new call (supposed to berequiring an OVSF code having an SF spreading factor for a servicehaving a bit-rate equal to kR) is eligible to be absorbed by theavailable tree capacity. If this is not the case, the call is blocked.

In the positive case, it is proceeded with seeking a minimum cost branchhaving a root code that can be associated to the input call. Ifnecessary, the descendant codes occupied by the identified branch arere-allocated. It is proceeded starting from the highest level codeappearing to be engaged, and substantially dealing with it as if it werea new call.

In particular, in Minn and Siu works it is proved that should a new callrequire a code belonging to layer x, the algorithm is still optimal evenif only x layer branches are considered (that is without having toanalyse the higher level branches).

The minimum cost branch setting can be achieved according to differenttechniques which need not be illustrated in detail herein.

Code dynamic allocation diagrams in W-CDMA type transmissions orsimilar, are described also in document WO-A-00/24146.

DISCLOSURE OF THE INVENTION

This invention does not refer just by itself to the code re-allocationcriteria and algorithms, and it does not hence specifically concern thecriteria enabling to proceed to a general code re-allocation, so as tobe able to serve or support a new call, whereby—due to a code-blockingphenomenon—a respective code is not immediately free. From thisstandpoint, the invention is able to make use of any known re-allocationtechnique and it actually appears to be hence transparent both towardsthe adopted allocation technique specification, and towards the specialorthogonal type of codes used: what is herein stated referring to theOVSF codes actually applies in an identical manner, by way of example,to the Walsh-Hadamard (WH) codes used in other CDMA transmissionstandards.

This invention rather faces the problem connected with the developmentof the re-configuration operation at a physical channel level.

In particular on the basis of the UTRA specifications (see by way ofexample TS 3GPP RAN 25.331 v3.7.0, June 2001) each individual codere-allocation operation is achieved by an RRC level method calledPhysical Channel Reconfiguration (or PCR).

The RRC element localised in UTRAN (UMTS Terrestrial Radio AccessNetwork) actuates the transmission of the new downlink channelling codeand sends it to the so-called UE in the Physical Channel Reconfigurationmessage indicating the new code. The UE element achieves the changes andthen confirms to UTRAN to have completed the reconfiguration by means ofa message called Physical Channel Reconfiguration Complete. When theUTRAN element receives from the UE element the confirmation message, theold downlink OVSF code is deactivated.

The criteria for developing this operation is represented schematicallyin FIG. 3 where are indicated the exchange operations between the unitUE and the unit UTRAN of the physical channel reconfiguration messages(PCR) and of the corresponding reconfiguration completion massages.

With a certain degree of schematics, but nevertheless with a substantialadherence to the truth, it can be stated that the solutions according tothe known technique essentially move in the perspective of optimisingthe coding tree utilisation, in order to guarantee that—at eachinstant—the highest possible number of the coding tree leaves areavailable.

This way of proceeding can provide (see document WO-A-00/24146 andspecially FIGS. 7 through 9 and related description) the enforcement ofrather elaborate re-allocation procedures based on the development ofre-allocation or re-assignment operations performed in sequence in thecourse of time. All this because, by way of example, it does not appearto be possible to (re)allocate a certain code until when thecorresponding mother code has not been made available according to suchmethods so as to prevent the code blocking phenomena from arising.

Strategies of this type find their substantial motivation in CDMA typecontexts mainly if not exclusively serving voice users, that ispresenting themselves in the great majority as users having the sameoutline in terms of the required service.

They are above all users for whom:

-   -   waiting times of (by way of example) 1.5 to 2 seconds such as        those necessary to perform a complete re-allocation operation on        a sequential basis, are on the whole admissible because they are        actually perceived as overlapping to normal signalling times,        and    -   the related calls are usually on the whole sufficiently long (at        least some seconds, or tens of seconds) with respect to the        above mentioned waiting times

The above considerations are no longer fully well fitting when referringto a multi-service context, that is to a context where, besides thenormal voice services, different services are assured, such as datatransmission services (electronic-mail transmission, transmission ofdifferent types of graphical information, etc.).

In a multi-service context, the above considerations are mitigated or—atleast—can be applied only to part of the users. In these multi-servicenetworks an important role is played by the users for whom a waitingtime of the 1-2 seconds type ends by being strongly penalising, both forthe necessity of being able to provide services to be qualified as realtime services, and because the previously mentioned waiting times couldbe widely greater (even by one order of magnitude or more) as comparedwith the network occupation interval associated to the transmission ofthe related message.

Obvious common sense criteria indicate that it does not have much sense,by way of example, to have a calling user wait for a couple of secondsand then, after gaining access with the allocation of the related code,ends his connection and communication requirements within a timeinterval (by way of example 100 msec.) widely lower than waiting time.In other words, it is not very meaningful to keep waiting a user whouses a rather high bit-rate and is hence able to see his servicerequirements complied with—and consequently clear the network—within atime interval that is remarkably lower as compared with the aforesaidwaiting interval.

This invention intends to provide a solution capable of satisfying suchrequirements in an optimal way, susceptible of appearing in amulti-service context.

According to this invention, such purpose is achieved thanks to a methodhaving the same characteristics specifically recalled in the claims thatfollow.

The invention concerns also the relating system as well as thecorresponding computer product, that is the product that can be directlyloaded into the memory of a digital processor and containing portions ofsoftware codes to achieve the procedure in compliance with the inventionwhen the product itself is run on a digital processor.

BRIEF DESCRIPTION OF DRAWINGS

The invention will now be described, only by way of non limitingexample, with reference to the enclosed drawings, where:

FIGS. 1 and 2, have already been previously described, specially toexplain the currently called “code blocking” phenomenon,

FIG. 3, relating to the development of the physical channelreconfiguration operation has also been previously described, and

FIG. 4 shows as a functional block diagram, a possible implementation ofthe method according to the invention.

BEST MODE FOR CARRYING OUT THE INVENTION

As already indicated many times in the previous introductory part ofthis description, in the technique are known (by way of example from theMinn and Siu article) techniques that are able to solve thecode-blocking problem by re-allocating the OVSF codes on the basis of adynamic code (re)allocation diagram.

This invention is specifically concerned with the problem ofimplementing such re-allocation diagram (whatever it is) speciallyregarding the handover phenomenon relating to the codes as shown in FIG.3.

This invention aims therefore at minimising the signalling overheadassociated to such operation, in particular for what concerns minimisingthe achievement times. This refers above all to users marked by accessmethods corresponding to a relatively broad required band and togenerally reduced access intervals.

Suppose then that a new input call, by way of example, in an UTRAdownlink connection (of a quite well known type) should require theallocation of an OVSF code with an SF spreading factor for a servicewith a kR bit-rate.

In short, the first code allocation procedure step is that of checkingwhether the available capacity is sufficient to accept the call. Ifthere is not an available sufficient capacity, the call is blocked bysending a corresponding (reject) message to the terminal—this typicallyis a mobile terminal—requiring the service.

If the call can however be accepted, the second step in the codeallocation method is that of finding a free code with an SF spreadingfactor capable of supporting the required kR bit-rate. Naturally, a“free” code means a code with no occupied descendant codes. In otherwords, a free code is the root of a free branch.

If there exists a free code, the code is allocated to the new call bysending a configuration message to the terminal requesting the service:in this case, it is not obviously necessary to proceed with a codere-allocation.

If there is however no free code, it is necessary to proceed with there-allocation according to the scheme shown in the functional diagram inFIG. 4.

In the first instance, it is provided that each branch with an SFspreading factor should be so-to-say labelled with its cost, meaning by“cost” the re-allocations number necessary to make it available.

It can be taken in consideration only SF branches with a not yetallocated root code. At this step, the minimum cost branch is sought andit is stored in an allocations list indicated as 100.

After the algorithm has found the minimum cost SF branch, all thealready allocated descendant codes of the selected minimum cost SFbranch must be re-allocated to other branches. To this purpose, whenanalysing the descendant codes (at a lower bit-rate), descendant codeswith a higher bit-rate are considered first, that is the codes with a2·SF spreading factor. Thereafter it will be considered all the codeswith 4·SF, thereafter 8·SF and so on, spreading factors until the treediagram leaves are attained. For each descendant code to bere-allocated, it is provided to consider the code as a new call intendedto be processed according to the previously seen criteria, so as toachieve the storing the new allocated code into the allocations list100.

When the calculation of the re-allocations is completed, the elementsavailable in the list 100 are re-organised in a decreasing order on thebasis of their spreading factor value, in a way that the first elementin the re-organised list shown the top spreading factor (that is havingthe minimum bit-rate). This step leads to the making of the re-organisedlist shown in FIG. 4, referred to as 102: the adopted layout is thattypical of the tails, whereby the first element in the list actuallyappears in the lowest position.

At this point the re-allocation messages are sent to the involvedterminals on the basis of the re-organised allocations list.

In particular re-allocations associated with the top spreading factorare sent first.

In the achievement example shown in FIG. 4, the numeric reference 104corresponds to the dispatch of a re-allocation message to a certain usercalled D, having an SF spreading factor equal to 256.

It is thereafter proceeded to send code re-allocation messages to theother addressed users, proceeding in a decreased spreading factor order.

All this by forecasting however that the re-allocation messages of acode allocated to the same spreading factor are sent (obviously withdifferent messages), simultaneously, that it at the same time.

This solution can be achieved provided such re-allocation messagesassociated to the same spreading factor do not collide with one another.

By way of example, the step indicated by 106 in the FIG. 4 diagram,corresponds to the dispatch of re-allocation messages achievedsimultaneously to a user C and a user E having the same SF spreadingfactor equal to 128.

In the step indicated by 108, it is provided to dispatch a re-allocationmessage to still another user such as a user B having an SF spreadingfactor equal to 64.

Finally in the step shown as 110, it is provided to dispatch there-allocation message to still another user A having an SF spreadingfactor equal, by way of example, to 32.

The described solution enables minimising the signalling overheadconnected with the code re-allocation. This is because codere-allocations with the same spreading factor are performedsimultaneously.

In this way, the lowest is spreading factor required by the new call,the more extended is the overall time required to end theallocation/re-allocation procedure It will nevertheless be appreciatedthat such overall time does not depend on the number of codes having thesame spreading factor, but only on the number of layers taken intoconsideration.

The advantage in terms of time, and hence of service efficiency, can beappreciated directly by referring to FIG. 3 illustrating the normaldevelopment flow of the physical channel re-configuration operation,that is:

-   -   the RRC level localised on the UTRAN layer actuates the new        downlink channelling code transmission and then dispatches to        the UE module a physical channel re-configuration message,        indicating the new code, and    -   the UE module carries out the changes and confirms to the UTRAN        layer that this has taken place through the physical channel        re-configuration achievement message; when the UTRAN level        receives from level UE the confirmation message, the previous        OVSF code used for communications downlink is deactivated.

The two concerned coded messages typically show under minimum signallingconditions, a useful load L_(send) equal to 39 bit (physical channelre-configuration message) and a useful load L_(answer) equal to 8 bit(physical channel re-configuration completion message).

Referring to such useful loads from the transmission of such messages,according to RRC standard (TS 3GPP RAN25.331 v3.7.0, June 2001) it ispossible to assess the overall signalling delay for an individual codere-allocation sizing around 220 milliseconds.

According to the invention, the solution causes the overall allocationdelay linked to the development of the whole re-allocation process to bedependent only from the number of the lower layers where there are codesto be re-allocated. This is because the re-allocation of codes havingthe same spreading factor are achieved simultaneously.

According to the invention, the solution can be used also in situationswhere the code re-allocation process is not actuated by the incoming ofa new call, but it is automatically actuated by a management procedureof the transmission resources.

Naturally, holding unchanged the principle of the invention, theachievement particulars and the actuation forms can be widely variedwith respect to the descriptions and illustrations herein, without forthis reason exiting from the sphere of this invention.

1. Method for re-allocating channelling codes associated to users in acode division multiple access transmission system (CDMA), said usersbeing operating at least at two different service bit-rates (kR), saidcodes being generated according to a tree structure organised on aplurality of layers, each layer being the identifier of a respectivespreading factor (SF) and of a corresponding service bit-rate (kR), themethod comprising the step of dispatching to each user involved in acode re-allocation a respective re-allocation message, characterised inthat it comprises the step of simultaneously dispatching there-allocation messages to the users operating with the same spreadingfactor (SF).
 2. Method as claimed in claim 1, characterised in that itcomprises the step of dispatching said re-allocation messages in a timesequential order starting from the re-allocation messages sent to theusers with the respective higher spreading factor (SF).
 3. Method asclaimed in claim 1 or claim 2, characterised in that it comprises thesteps of: detecting the request for access by a new user to the system,checking the availability of a free channelling code, in the case of theavailability of a free channelling code, allocating said free code tosaid new user, in the case of unavailability of a free channelling code,identifying a minimum cost tree branch having a minimum free channellingcode allocation cost in said tree, proceeding with re-allocating thecodes of said minimum cost branch to other tree branches in descendingorder of the service bit-rate (kR) and considering each re-allocation asa new request.
 4. Method as claimed in claim 1, characterised in that itcomprises the step of using, as said channelling codes, OrthogonalVariable Spreading Factor (OVSF) codes.
 5. Transmission system operatingthe method as per claim
 1. 6. System as per claim 5, characterised inthat said system is an UMTS Terrestrial Radio Access network (UTRAN). 7.Computer product that can be directly loaded into the main memory of adigital processor and comprising portions of software codes achieving aprocess as per claim 1, when the product is made to run on a digitalprocessor.